package com.cn.wanxi.servlet;

import com.alibaba.fastjson.JSONObject;
import com.cn.wanxi.model.UserModel;
import com.cn.wanxi.service.IUserService;
import com.cn.wanxi.service.impl.UserServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/login")
public class LoginServlet extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        /**
         * 1.拿到页面的数据
         * 2.封装数据对象--model
         * 3.调用service
         * 4.得到返回数据，反馈
         * 5.将得到的数据返回给前端
         * 6.因为前端是用json对象进行传输，所以后台必须以json对象传递给前台
         *
         */
        //        1.拿到页面的数据
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        String code = req.getParameter("code");
        String sessionCode = (String) req.getSession().getAttribute("code");
        //        2.封装数据对象--model
        UserModel userModel = new UserModel();
        userModel.setUsername(username);
        userModel.setPassword(password);
        userModel.setCode(code);
        userModel.setSessionCode(sessionCode);
        //        3.调用service
        IUserService iUserService = new UserServiceImpl();
//        4.得到返回数据，反馈
        String result = iUserService.login(userModel);
        if ("success".equals(result)) {
            req.getSession().setAttribute("username", username);
        }
        //        将得到的数据返回给前端
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("result", result);
        resp.getWriter().println(jsonObject);
//        req.setAttribute("company","fdasf");
//        req.getRequestDispatcher("/home.jsp").forward(req,resp);
    }
}
